﻿using System;
using System.Collections.Generic;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Content;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;

namespace ShaderApp
{
    abstract class ShaderExample
    {
        protected List<ShaderedObject> objects = new List<ShaderedObject>();

        abstract internal void LoadContent(ContentManager content);

        //public Model SampleModel { get; set; }

        //public Effect Shader { get; set; }

        public void Draw(GameTime gameTime, Vector3 eyePosition, Vector3 lightPosition, Matrix world2projection)
        {
            foreach(ShaderedObject obj in objects)
            {
                obj.Draw(gameTime, eyePosition, lightPosition, world2projection);
            }
        }
    }
}
